/**
 * 
 */
package modelo.dao;

import java.util.List;

import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;

import modelo.HibernateUtil;
import modelo.pojos.Respuestas;
import modelo.pojos.Usuario;

public class RespuestasDao{
	
	public List<Respuestas> loadAll(Respuestas respuesta)
	{
		Respuestas res= null;
		Session s = HibernateUtil.getSessionFactory().getCurrentSession();
		Transaction tx = s.getTransaction();
		String sentencia = "from Respuestas";
		List<Respuestas> listaRespuestas = null;
		try {
			tx.begin();
			listaRespuestas = (List<Respuestas>) s.createQuery(sentencia).list();
			tx.commit();
		} catch (HibernateException he) {
			// TODO: handle exception
			he.printStackTrace();
		} finally {
			if (tx != null && tx.isActive()) {
				tx.rollback();
			}
		}
		return listaRespuestas;
	}
	//from Role as role INNER JOIN Involvement as involvement WHERE involvement.id = X
	public Respuestas obtenerRespuesta(int idRespuesta)
	{
		Respuestas res = null;
        String sentencia = "from Respuestas where idrespuestas='" + idRespuesta+ "'";
        Session s = HibernateUtil.getSessionFactory().getCurrentSession();
        Transaction tx = s.getTransaction();
        try {
 
        	tx.begin();
            List<Respuestas> listaUsuarios = (List<Respuestas>) s.createQuery(sentencia).list();
            if (!listaUsuarios.isEmpty()) {
            	res = listaUsuarios.get(0);
            } else {
                System.out.println("fracaso obtener Respuestas");
            }
 
        } catch (HibernateException he) {
			// TODO: handle exception
			he.printStackTrace();
		} finally {
			if (tx != null && tx.isActive()) {
				tx.rollback();
			}
		}
        return res;
	}
	
	public int obtenerIdRespuesta(String respuesta){
		
		int res=0;
		//Quitamos :: y numero a las respuestas
		respuesta = respuesta.substring(0, respuesta.length()-3);
		
        String sentencia = "from Respuestas where respuesta='" + respuesta+ "'";
        //System.out.println("--------->Sentencia: "+sentencia);
        Session s = HibernateUtil.getSessionFactory().getCurrentSession();
        Transaction tx = s.getTransaction();
        try {
 
        	tx.begin();
            List<Respuestas> listaUsuarios = (List<Respuestas>) s.createQuery(sentencia).list();
            if (!listaUsuarios.isEmpty()) {
            	res = listaUsuarios.get(0).getIdrespuestas();
            } else {
                System.out.println("fracaso obtener Respuestas");
            }
 
        } catch (HibernateException he) {
			// TODO: handle exception
			he.printStackTrace();
		} finally {
			if (tx != null && tx.isActive()) {
				tx.rollback();
			}
		}
        return res;
	}

}
